Computer systems (such as computer aided design (CAD), computer aided manufacture (CAM), and computer aided engineering systems (CAE)) have been developed to interactively generate design, analysis, and manufacturing information for end user products. The capabilities of these systems may be enhanced by permitting the system to utilize various engineering knowledge bases and engineering rules. Engineering knowledge is accessed from and expressed as rules in a programming language. These rules specify parameters that are inputs to digital objects used to generate process specific information. The challenge is to incorporate the engineering rules into a CAD/CAM/CAE system while maintaining a relationship with the existing design model. To date, some programming languages have been developed that can express engineering rules and subsequently generate design models. The execution of such a program results in the creation of the objects that constitute the design and thus these objects must be completely specified by the program. The task of fully describing these objects has two major drawbacks. First, fully describing an object can be very complex and burdensome due to the difficulty in deciphering textual representations of the object. Second, the programming languages are not capable of revising or editing existing information as there is no relationship with an existing design model. Therefore, it is desirable to provide an interactive relationship between the engineering rules and the design object.